# What are managed inputs:
The IOIO Live Service supports two types of inputs, these are:
- Managed
- Unmanaged
Both of these types are functioning the same way with the exception of one key difference. Unmanaged inputs are created and deleted in regards to channel creation and deletion while Managed Inputs can be created prior to creating a channel and are not bound to channel creation and deletion. As a consequence of this the Managed inputs are keeping their IP addresses even after the channel has been stopped, while undamaged inputs receive a new IP Address with each channel start. Managed inputs offer the advantage of having a static IP address which allows for a much easier setup for streaming i.e. there is no need for configuring a new IP address each time a new stream is about to be broadcasted. However it must be noted that the input is generating a running cost even when not in use.
Inputs are also separated in two groups:
Input Groups:
- VIRTUAL_INPUT
- CONNECTED_DEVICE
At the moment as CONNECTED_DEVICE is supported only the Amazon Link device. Logical restriction is that from a single Amazon Link device only one Managed Input can be created. Trying to create a second Managed Input with the same device will result in an error. Each Amazon Link device has two types of information for its state:
- Information for the Internet Connectivity
- State of whether the device settings are synchronized with the device itself
When the type is VIRTUAL_INPUT defining for the input is the protocol. Supported protocols could be roughly separated in two general groups:
- PUSH - These are inputs that have the video signal being pushed to them via the corresponding protocol, usually RTMP_PUSH, RTP, Zixi_PUSH RIST and etc.
- PULL - These are inputs that pull their video signal from a set location(IP address or a URL), such protocols are RTMP_PULL, URL_PULL and etc.
Each Managed Input has its own status which is:
- LOCKED: MediaLive channel is in status: CREATE_FAILED, RECOVERING, DELETED, UPDATING, UPDATE_FAILED. These are internal AWS statuses for a channel or a so-called “temporary” conditions or such that cannot be recovered.
- DETACHED: The input can be attached to a workflow but no channel is created with it.
- ATTACHED: A channel which is created by a workflow that’s using the input is IDLE - i.e. created as a resource but not yet started.(Channel is with status IDLE)
- ACTIVE: A channel started from a workflow which uses the input is active i.e. channel status is: CREATING, STARTING, STOPPING, DELETING, RUNNING.
Supported protocols as of now are:
- ZIXI_PUSH
- RIST
- RTP
- RTP_FEC
- RTMP_PUSH
- RTMP_PULL
- URL_PULL
- MP4(File Input)
PULL protocols can be unprotected or protected with a username and password. PUSH protocols can have a list of CIDR blocks, which restrict who can push to them. When the protocol is ZIXI_PUSH, RIST, RTP_FEC or RTP, but only in a region different than the default region, only one CIDR block can be set. This is done in the same manner as when setting it for the default region's PUSH inputs, however there can be only one element being set. In the information for each Managed Input there is a list with all Workflows, which are configured to use the Managed Input, but haven’t been started yet. After a channel has been started from a given workflow and then stopped or has encountered an error during starting/stopping the corresponding workflow is removed from the list. Choosing a region when creating a Managed input is not mandatory, however if the parameter is not passed in the request, the default region is used. While listing connected devices, if no managedInputId is set this means that there is no Managed Input created with the corresponding Amazon Link device.
Deletion of a managed input leads to deleting the resource associated with it, which means that the IP Address that has been attached to the managed input could NOT be the same next time a managed input is created with the same settings. A Managed Input can be edited only when its status is different from ATTACHED and DETACHED. When listing a detailed configuration for a Managed Input, if the input is of type CONNECTED_DEVICE, all of the Amazon Link devices’ settings are displayed.