def deliverresp(self, Msg_Id, Result, sequence_id):
        mb = cmppdeliverresp(Msg_Id, Result)
        mh = messageheader(mb.length(), CMPP_DELIVER_RESP, sequence_id)
        msg = mh.header() + mb.body()

        # self.__sp.send(msg)
        self.__send_queue.put((msg, sequence_id))
 def connect(self):
     mb = cmppconnect(self.__sp_id, self.__sp_passwd)
     mh = messageheader(mb.length(), CMPP_CONNECT,
                        self.__internal_id(seq_type=0))
     msg = mh.header() + mb.body()
     try:
         self.connectgateway()
         # print(msg, len(msg))
         self.send(msg)
         h, b = self.recv()
         # print(h, b)
         status = b.get('Status', -1)
         if status != 0:
             self.logger.error(
                 'connect failed, status: %d.' % status)
             # self.__sp.close()
             # sys.exit(201)
         else:
             self.logger.info('connect successfully')
             return True
         # self.__send_queue.put(msg_seq)
     except socket.error as arg:
         self.logger.error(arg)
         # self.disconnectgateway()
         # return False
         # sys.exit(100)
     # self.logger.error('connect failed')
     return False
    def activeresp(self, sequence_id):
        mb = cmppactiveresp()
        mh = messageheader(mb.length(), CMPP_ACTIVE_TEST_RESP, sequence_id)
        msg = mh.header() + mb.body()

        # self.__sp.send(msg)
        self.__send_queue.put((msg, sequence_id))
Exemple #4
0
 def terminate(self):
     seq = self.__internal_id(seq_type=0)
     mh = messageheader(0, CMPP_TERMINATE, seq)
     msg = mh.header()
     if self.__debug == True:
         print(msg, len(msg))
     #self.__sp.send(msg)
     self.__send_queue.put((msg, seq))
Exemple #5
0
 def active(self):
     seq = self.__internal_id(seq_type=0)
     mh = messageheader(0, CMPP_ACTIVE_TEST, seq)
     msg = mh.header()
     if self.__debug == True:
         print(msg, len(msg))
     #self.__sp.send(msg)
     self.__send_queue.put((msg, seq))
 def terminate(self):
     seq = self.__internal_id(seq_type=0)
     mh = messageheader(0, CMPP_TERMINATE, seq)
     msg = mh.header()
     try:
         self.__sp.send(msg)
     except Exception:
         pass
Exemple #7
0
 def terminate(self):
     seq = self.__internal_id(seq_type=0)
     mh = messageheader(0, CMPP_TERMINATE, seq)
     msg =  mh.header()
     if self.__debug == True:
         print(msg,len(msg))
     #self.__sp.send(msg)
     self.__send_queue.put((msg, seq))
Exemple #8
0
 def active(self):
     seq = self.__internal_id(seq_type=0)
     mh = messageheader(0, CMPP_ACTIVE_TEST, seq)
     msg =  mh.header()
     if self.__debug == True:
         print(msg,len(msg))
     #self.__sp.send(msg)
     self.__send_queue.put((msg, seq))
 def normalmessage(self, dest, content, isdelivery=0):
     mb = cmppsubmit(Src_Id=self.__src_id,
                     Service_Id=self.__service_id,
                     Msg_src=self.__com_id,
                     Registered_Delivery=isdelivery,
                     Msg_Content=content,
                     DestUsr_tl=len(dest),
                     Dest_terminal_Id=dest)
     seq = self.__internal_id()
     mh = messageheader(mb.length(), CMPP_SUBMIT, seq)
     msg = mh.header() + mb.body()
     # self.__sp.send(msg)
     # self.__sp.send(msg)
     self.__send_queue.put((msg, seq))
Exemple #10
0
 def normalmessage(self, dest, content, isdelivery=0):
     mb = cmppsubmit(Msg_src=self.__sp_id,
                     Src_Id=self.__src_id,
                     Registered_Delivery=isdelivery,
                     Msg_Content=content,
                     Msg_Length=len(content) * 2,
                     DestUsr_tl=len(dest),
                     Dest_terminal_Id=dest)
     seq = self.__internal_id()
     mh = messageheader(mb.length(), CMPP_SUBMIT, seq)
     msg = mh.header() + mb.body()
     if self.__debug == True:
         print(msg, len(msg))
     #self.__sp.send(msg)
     self.__send_queue.put((msg, seq))
Exemple #11
0
 def normalmessage(self, dest, content, isdelivery = 0):
     mb = cmppsubmit(
             Msg_src = self.__sp_id, 
             Src_Id = self.__src_id, 
             Registered_Delivery = isdelivery, 
             Msg_Content = content, 
             Msg_Length = len(content)*2, 
             DestUsr_tl = len(dest),
             Dest_terminal_Id = dest)
     seq = self.__internal_id()
     mh = messageheader(mb.length(), CMPP_SUBMIT, seq)
     msg = mh.header() + mb.body()
     if self.__debug == True:
         print(msg,len(msg))
     #self.__sp.send(msg)
     self.__send_queue.put((msg, seq))
Exemple #12
0
 def connect(self):
     mb = cmppconnect(self.__sp_id, self.__sp_passwd)
     mh = messageheader(mb.length(), CMPP_CONNECT, self.__internal_id(seq_type=0))
     try:
         msg =  mh.header() + mb.body()
         if self.__debug == True:
             print(msg,len(msg))
         self.__sp.send(msg)
         h,b = self.recv()
         print(h,b)
         if b['Status']!=0:
             print('connect failed, status: %d' % b['Status'])
             self.__sp.close()
             sys.exit(201)
         else:
             print('connect successfully')
         #self.__send_queue.put(msg_seq)
     except socket.error as arg:
         self.__sp.close()
         print(arg)
         sys.exit(100)
Exemple #13
0
 def connect(self):
     mb = cmppconnect(self.__sp_id, self.__sp_passwd)
     mh = messageheader(mb.length(), CMPP_CONNECT,
                        self.__internal_id(seq_type=0))
     try:
         msg = mh.header() + mb.body()
         if self.__debug == True:
             print(msg, len(msg))
         self.__sp.send(msg)
         h, b = self.recv()
         print(h, b)
         if b['Status'] != 0:
             print('connect failed, status: %d' % b['Status'])
             self.__sp.close()
             sys.exit(201)
         else:
             print('connect successfully')
         #self.__send_queue.put(msg_seq)
     except socket.error as arg:
         self.__sp.close()
         print(arg)
         sys.exit(100)
Exemple #14
0
    def longmessage(self, dest, content, isdelivery=0):
        tp_udhi = '\x05\x00\x03\x37'
        remain_len = len(content) * 2
        times = remain_len // 134
        if remain_len % 134 > 0:
            times += 1
        msg = []
        seq = self.__internal_id()
        for count in range(0, times):

            if remain_len >= 134:
                current_len = 134
            else:
                current_len = remain_len
            remain_len -= 134

            content_header = tp_udhi + \
                    struct.pack('B', times).decode('utf-8') + \
                    struct.pack('B', count+1).decode('utf-8')
            content_slice = content[(0 + count * 67):(current_len // 2 +
                                                      count * 67)]

            mb = cmppsubmit(Msg_src=self.__sp_id,
                            Src_Id=self.__src_id,
                            Registered_Delivery=isdelivery,
                            Msg_Header=content_header,
                            Msg_Content=content_slice,
                            Msg_Length=current_len + 6,
                            DestUsr_tl=len(dest),
                            Dest_terminal_Id=dest,
                            TP_pId=1,
                            TP_udhi=1)
            mh = messageheader(mb.length(), CMPP_SUBMIT, seq)
            msg.append(mh.header() + mb.body())

        if self.__debug == True:
            print(msg[count], len(msg[count]))
        #self.__sp.send(msg[count])
        self.__send_queue.put((msg, seq))
Exemple #15
0
    def longmessage(self, dest, content, isdelivery = 0):
        tp_udhi = '\x05\x00\x03\x37'
        remain_len = len(content)*2
        times = remain_len // 134
        if remain_len % 134 > 0:
            times += 1
        msg = []
        seq = self.__internal_id()
        for count in range(0, times):

            if remain_len >= 134:
                current_len = 134
            else:
                current_len = remain_len
            remain_len -= 134

            content_header = tp_udhi + \
                    struct.pack('B', times).decode('utf-8') + \
                    struct.pack('B', count+1).decode('utf-8')
            content_slice = content[(0+count*67):(current_len//2+count*67)]

            mb = cmppsubmit(
                    Msg_src = self.__sp_id, 
                    Src_Id = self.__src_id, 
                    Registered_Delivery = isdelivery, 
                    Msg_Header = content_header, 
                    Msg_Content = content_slice, 
                    Msg_Length = current_len + 6, 
                    DestUsr_tl = len(dest),
                    Dest_terminal_Id = dest, 
                    TP_pId = 1,
                    TP_udhi = 1)
            mh = messageheader(mb.length(), CMPP_SUBMIT, seq)
            msg.append(mh.header() + mb.body())
         
        if self.__debug == True:
            print(msg[count],len(msg[count]))
        #self.__sp.send(msg[count])
        self.__send_queue.put((msg, seq))