def create_push_input()

in broadcast-monitoring/infrastructure/elemental/custom_resources/custom-resource-py/libs/medialive.py [0:0]


def create_push_input(config):
    sg = medialive.create_input_security_group(
        WhitelistRules=[
            {
                'Cidr': config['Cidr']
            }
        ]
    )

    # Feature/xxxx RTMP Requires Stream names for each input Destination.
    if config['Type'] == 'RTMP_PUSH':
        Destination = [
            {
                'StreamName': config['StreamName'] + 'primary'
            },
            {
                'StreamName': config['StreamName'] + 'secondary'
            }
        ]
    else:
        Destination = []

    response = medialive.create_input(
        InputSecurityGroups=[
            sg['SecurityGroup']['Id'],
        ],
        Name=config['StreamName'],
        Destinations=Destination,
        Type=config['Type']
    )
    responseData['Id'] = response['Input']['Id']
    responseData['EndPoint1'] = response['Input']['Destinations'][0]['Url']
    responseData['EndPoint2'] = response['Input']['Destinations'][1]['Url']
    print('RESPONSE::{}'.format(responseData))
    return responseData