@@ -823,6 +823,37 @@ def generateUUID(self, type):
823823 def generateUploadId (self ):
824824 return str (calendar .timegm (datetime .utcnow ().utctimetuple ()))
825825
826+ def createBroadcast (self , previewWidth = 1080 , previewHeight = 1920 , broadcastMessage = '' ):
827+ data = json .dumps ({'_uuid' : self .uuid ,
828+ '_uid' : self .username_id ,
829+ 'preview_height' : previewHeight ,
830+ 'preview_width' : previewWidth ,
831+ 'broadcast_message' : broadcastMessage ,
832+ 'broadcast_type' : 'RTMP' ,
833+ 'internal_only' : 0 ,
834+ '_csrftoken' : self .token })
835+ return self .SendRequest ('live/create/' , self .generateSignature (data ))
836+
837+ def startBroadcast (self , broadcastId , sendNotification = False ):
838+ data = json .dumps ({'_uuid' : self .uuid ,
839+ '_uid' : self .username_id ,
840+ 'should_send_notifications' : int (sendNotification ),
841+ '_csrftoken' : self .token })
842+ return self .SendRequest ('live/' + str (broadcastId ) + '/start' , self .generateSignature (data ))
843+
844+ def stopBroadcast (self , broadcastId ):
845+ data = json .dumps ({'_uuid' : self .uuid ,
846+ '_uid' : self .username_id ,
847+ '_csrftoken' : self .token })
848+ return self .SendRequest ('live/' + str (broadcastId ) + '/end_broadcast/' , self .generateSignature (data ))
849+
850+ def addBroadcastToLive (self , broadcastId ):
851+ # broadcast has to be ended first!
852+ data = json .dumps ({'_uuid' : self .uuid ,
853+ '_uid' : self .username_id ,
854+ '_csrftoken' : self .token })
855+ return self .SendRequest ('live/' + str (broadcastId ) + '/add_to_post_live/' , self .generateSignature (data ))
856+
826857 def buildBody (self , bodies , boundary ):
827858 body = u''
828859 for b in bodies :
0 commit comments