I have this cloud formation template :
Resources:
MediaConnectFlowSource:
Type: 'AWS::MediaConnect::FlowSource'
Properties:
Description: SRTSource
Name: SRTSource
WhitelistCidr: 0.0.0.0/0
Protocol: srt-listener
MediaConnectFlow:
Type: 'AWS::MediaConnect::Flow'
Properties:
Name: testStream
Source: !Ref MediaConnectFlowSource
MediaConnectFlowOutput:
Type: 'AWS::MediaConnect::FlowOutput'
Properties:
CidrAllowList: 0.0.0.0/0
FlowArn: !Ref MediaConnectFlow
Name: SRTOutput
Protocol: srt-listener
I'm trying to create this resources , and following the AWS documentation for Media Connect with Cloud Formation this should work. Instead I'm getting this error:
Properties validation failed for resource MediaConnectFlowSource with message: #/Protocol: #: only 1 subschema matches out of 2 #/Protocol: failed validation constraint for keyword [enum]
For the documentation itself, regarding the enum allowed in the Cloud Formation template for Media Connect Flow Source, there is no actual values for the allowed values. It only shows the values which support failover like Zixi-push, RTP-FEC, RTP, and RIST.
I've tried changing the protocol name and realized that even writing random characters for the protocol would result in the same error. So the srt-listener value is not an actual protocol value ? But checking the SDK documentation and MediaConnect console there is an srt-listener enum value for protocol.
So since I want to use the srt-listener protocol , What would the actual value be for it ? I've tried SRT-listener ,srt listener, SRT listener but I get the same error
You can check the valid values from the AWS CLI or CloudShell prompt, for the create-flow command, if you pass the 'help' parameter.
As of now, valid flow source types include: "Protocol": "zixi-push"|"rtp-fec"|"rtp"|"zixi-pull"|"rist"|"st2110-jpegxs"|"cdi"|"srt-listener"|"srt-caller"|"fujitsu-qos"
I suggest tweaking the create-flow JSON until it works using a CLI command; then shifting that into a cloudformation stack template. This will help distinguish between a flow parameter error, and a cloudformation syntax issue.