def sendFile(self, to_, path, file_name=''): if file_name == '': import ntpath file_name = ntpath.basename(path) M = Message(to=to_, text=None, contentType=14) file_size = len(open(path, 'rb').read()) M.contentMetadata = { 'FILE_NAME': str(file_name), 'FILE_SIZE': str(file_size) } M.contentPreview = None M_id = self._client.sendMessage(0, M).id files = { 'file': open(path, 'rb'), } params = { 'name': file_name, 'oid': M_id, 'size': file_size, 'type': 'file', 'ver': '1.0', } data = {'params': json.dumps(params)} r = self.server.post_content(self.server.LINE_OBS_DOMAIN + '/talk/m/upload.nhn', data=data, files=files) if r.status_code != 201: raise Exception('Upload file failure.') return True
def sendMessage(self, to, text, contentMetadata={}, contentType=0, contentPreview={}): msg = Message() msg.to, msg._from = to, self.profile.mid msg.text = text msg.contentPreview, msg.contentType, msg.contentMetadata = contentPreview, contentType, contentMetadata if to not in self._messageReq: self._messageReq[to] = -1 self._messageReq[to] += 1 return self._client.sendMessage(self._messageReq[to], msg)
def sendVideo(self, to_, path): M = Message(to=to_, text=None, contentType=2) M.contentMetadata = {'VIDLEN': '60000', 'DURATION': '60000'} M.contentPreview = None M_id = self._client.sendMessage(0, M).id files = {'file': open(path, 'rb')} params = { 'name': 'media', 'oid': M_id, 'size': len(open(path, 'rb').read()), 'type': 'video', 'ver': '1.0', } data = {'params': json.dumps(params)} r = self.server.post_content(self.server.LINE_OBS_DOMAIN + '/talk/m/upload.nhn', data=data, files=files) if r.status_code != 201: raise Exception('Upload video failure.') return True
def sendVoice(self, to_, path): M = Message(to=to_, text=None, contentType=3) M.contentPreview = None M_id = self._client.sendMessage(0, M).id files = { 'file': open(path, 'rb'), } params = { 'name': 'voice_message', 'oid': M_id, 'size': len(open(path, 'rb').read()), 'type': 'audio', 'ver': '1.0', } data = {'params': json.dumps(params)} r = self.server.post_content(self.server.LINE_OBS_DOMAIN + '/talk/m/upload.nhn', data=data, files=files) if r.status_code != 201: raise Exception('Upload voice failure.') return True