コード例 #1
0
 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
コード例 #2
0
ファイル: client.py プロジェクト: celengm/line-py
 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)
コード例 #3
0
 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
コード例 #4
0
 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