@@ -5,6 +5,7 @@ defmodule ExRTMP.Message do
55
66 require Logger
77
8+ alias __MODULE__ . Command.Generic
89 alias __MODULE__ . Command.NetConnection . { Connect , CreateStream , Response }
910 alias __MODULE__ . Command.NetStream . { DeleteStream , FCPublish , OnStatus , Play , Publish }
1011 alias __MODULE__ . Metadata
@@ -245,16 +246,6 @@ defmodule ExRTMP.Message do
245246 % CreateStream { transaction_id: transaction_id }
246247 end
247248
248- defp handle_message_payload ( [ result , transaction_id , command_object , data ] )
249- when result in [ "_result" , "_error" ] do
250- % Response {
251- result: result ,
252- transaction_id: trunc ( transaction_id ) ,
253- command_object: command_object ,
254- data: data
255- }
256- end
257-
258249 defp handle_message_payload ( [ "publish" , _txid , nil , name , type ] ) , do: Publish . new ( name , type )
259250 defp handle_message_payload ( [ "onStatus" , _txid , nil , info ] ) , do: % OnStatus { info: info }
260251
@@ -270,11 +261,27 @@ defmodule ExRTMP.Message do
270261 Play . new ( name , play_opts )
271262 end
272263
273- defp handle_message_payload ( [ "deleteStream" , _txid , nil , stream_id ] ) ,
274- do: DeleteStream . new ( stream_id )
264+ defp handle_message_payload ( [ "deleteStream" , _txid , nil , stream_id ] ) do
265+ DeleteStream . new ( stream_id )
266+ end
267+
268+ defp handle_message_payload ( [ "FCPublish" , transaction_id , nil , name ] ) do
269+ FCPublish . new ( transaction_id , name )
270+ end
271+
272+ defp handle_message_payload ( [ result , transaction_id , command_object , data ] )
273+ when result in [ "_result" , "_error" ] do
274+ % Response {
275+ result: result ,
276+ transaction_id: trunc ( transaction_id ) ,
277+ command_object: command_object ,
278+ data: data
279+ }
280+ end
275281
276- defp handle_message_payload ( [ "FCPublish" , transaction_id , nil , name ] ) ,
277- do: FCPublish . new ( transaction_id , name )
282+ defp handle_message_payload ( [ name , transaction_id , nil , params ] ) when is_binary ( name ) do
283+ Generic . new ( name , transaction_id , params )
284+ end
278285
279286 defp handle_message_payload ( other ) do
280287 Logger . warning ( "Unknown command: #{ inspect ( other ) } " )
0 commit comments