Любой нормальный софтсвитч, предоставляющий услуги своими силами, должен уметь воспринимать hold от абонента (он же re-invite с sendonly, либо с inactive) как flash и уметь связывать диалог по второй линии SIP-телефона с диалогом по первой линии, единственное, количество абонентов, которым будет позволена обработка услуг таким способом обычно лицензируется. А нелицензируемый вариант, это как раз, что, что вам нужно - передача flash в SIP INFO, но тут каждый вендор может поддерживать только свой формат, это например, как application/sscc у Huawei, application/broadsoft у BroadWorks. Кстати у некоторых SIP-телефонов можно настроить flash для передачи в SIP INFO на кнопку, но это скорее единичные случаи.
Поэтому вопрос больше к вашему софтсвитчу, почему он не умеет обрабатывать re-invite с sendonly как flash? Этот способ постановки потока на удержание описан в RFC 3264:
8.4 Putting a Unicast Media Stream on Hold
If a party in a call wants to put the other party "on hold", i.e.,
request that it temporarily stops sending one or more unicast media
streams, a party offers the other an updated SDP.
If the stream to be placed on hold was previously a sendrecv media
stream, it is placed on hold by marking it as sendonly. If the
stream to be placed on hold was previously a recvonly media stream,
it is placed on hold by marking it inactive.