Make subscriptionStatus work again.
This commit is contained in:
parent
1aa37cf1b5
commit
4de0ef733d
1 changed files with 61 additions and 0 deletions
61
src/htsp.c
61
src/htsp.c
|
@ -1133,6 +1133,65 @@ htsp_subscription_stop(htsp_subscription_t *hs, htsmsg_t *m)
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
* Send a 'subscriptionStatus' message
|
||||
*/
|
||||
static void
|
||||
htsp_subscription_status(htsp_subscription_t *hs, const char *err)
|
||||
{
|
||||
htsmsg_t *m = htsmsg_create_map();
|
||||
htsmsg_add_str(m, "method", "subscriptionStatus");
|
||||
htsmsg_add_u32(m, "subscriptionId", hs->hs_sid);
|
||||
|
||||
if(err != NULL)
|
||||
htsmsg_add_str(m, "status", err);
|
||||
|
||||
htsp_send(hs->hs_htsp, m, NULL, &hs->hs_q, 0);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
static void
|
||||
htsp_subscription_transport_status(htsp_subscription_t *hs,
|
||||
transport_feed_status_t status)
|
||||
{
|
||||
const char *err = NULL;
|
||||
|
||||
switch(status) {
|
||||
case TRANSPORT_FEED_UNKNOWN:
|
||||
return;
|
||||
|
||||
case TRANSPORT_FEED_NO_INPUT:
|
||||
err = "No data input from adapter detected";
|
||||
break;
|
||||
|
||||
case TRANSPORT_FEED_NO_DEMUXED_INPUT:
|
||||
err = "No mux packets for this service";
|
||||
break;
|
||||
|
||||
case TRANSPORT_FEED_RAW_INPUT:
|
||||
err = "Data received for service, "
|
||||
"but no packets could be reassembled";
|
||||
break;
|
||||
|
||||
case TRANSPORT_FEED_NO_DESCRAMBLER:
|
||||
err = "No descrambler available for service";
|
||||
break;
|
||||
|
||||
case TRANSPORT_FEED_NO_ACCESS:
|
||||
err = "Access denied";
|
||||
break;
|
||||
|
||||
case TRANSPORT_FEED_VALID_PACKETS:
|
||||
err = NULL;
|
||||
break;
|
||||
}
|
||||
htsp_subscription_status(hs, err);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
|
@ -1155,9 +1214,11 @@ htsp_streaming_input(void *opaque, streaming_message_t *sm)
|
|||
break;
|
||||
|
||||
case SMT_TRANSPORT_STATUS:
|
||||
htsp_subscription_transport_status(hs, sm->sm_code);
|
||||
break;
|
||||
|
||||
case SMT_NOSOURCE:
|
||||
htsp_subscription_status(hs, "No available sources");
|
||||
break;
|
||||
|
||||
case SMT_EXIT:
|
||||
|
|
Loading…
Add table
Reference in a new issue