Thank you for you help. It was my fault. В письме от среда, 22 января 2020 г. 23:03:41 +03 пользователь Skale Franz написал: > Hi, > at first check, that pjsip_endpt_send_raw return PJ_SUCCESS. > If not, check the return value. > Because the function passed the cb along to send_msg, check the source code > snippet taken from pjsip_transport.c /* Send to transport */ > status = tr->send_msg(tr, tdata, addr, addr_len, > tdata, &send_raw_callback); > > if (status != PJ_EPENDING) { > /* callback will not be called, so destroy tdata now. */ > > So, when reading the docs > (https://www.pjsip.org/pjsip/docs/html/group__PJSIP__ENDPT__STATELESS.htm#g > a5ebe940444f71bdc00aa1f927a9a3677) > > it's clearly stated: (check the Returns section) > This is a low-level function to send raw data to a destination. > > See also pjsip_endpt_send_raw_to_uri(). > > Parameters > endpt The SIP endpoint instance. > tp_type Transport type. > sel Optional pointer to transport selector instance if application wants > to use a specific transport instance rather then letting transport manager > finds the suitable transport.. raw_data The data to be sent. > data_len The length of the data. > addr Destination address. > addr_len Length of destination address. > token Arbitrary token to be returned back to callback. > cb Optional callback to be called to notify caller about the completion > status of the pending send operation. > > Returns > If the message has been sent successfully, this function will return > PJ_SUCCESS and the callback will not be called. If message cannot be sent > immediately, this function will return PJ_EPENDING, and application will be > notified later about the completion via the callback. Any statuses other > than PJ_SUCCESS or PJ_EPENDING indicates immediate failure, and in this > case the callback will not be called. > > > So, you have to check the return value. > If you get "PJ_SUCCESS", then the callback won't be called ! > > Rgds > Franz > > > ________________________________________ > Von: pjsip <pjsip-bounces@xxxxxxxxxxxxxxx> im Auftrag von Oleg Linkin > <oleg.linkin@xxxxxxx> Gesendet: Mittwoch, 22. Jänner 2020 15:14 > An: pjsip@xxxxxxxxxxxxxxx > Betreff: BUG: pjsip_endpt_send_raw doesn't call > pjsip_tp_send_callback > > Hello, developers > > I try to use pjsip_endpt_send_raw with last callback parameter: > pjsip_tp_send_callback but this callback is never called. > > ``` > void TransportPjSipImpl_send_callback(void *token, pjsip_tx_data *tdata, > pj_ssize_t bytes_sent) > { > csDebug(0, "AAAAAA"); > } > ... > status = pjsip_endpt_send_raw(m_Endpoint, transportType, &selector, szSip, > length, addr, addrLen, reinterpret_cast<void*>(nCallId), > TransportPjSipImpl_send_callback); > ``` > > Could you possibly help me with this situation? > > Sincerely, > Oleg Linkin > > > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@xxxxxxxxxxxxxxx > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@xxxxxxxxxxxxxxx > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org _______________________________________________ Visit our blog: http://blog.pjsip.org pjsip mailing list pjsip@xxxxxxxxxxxxxxx http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org