Boa noite, eu criei uma diretiva para um filtro,
var app = angular.module('filtroDirectives', []);
app.directive('filtroCanaisDirective', ['$http', function($http) {
    return {
        restrict: 'AE',
        transclude: true,
        templateUrl: '/app/filtros/templates/filtro-canal.html',
        controller: function($scope, $attrs) {
            $scope.canais = [];
            $http({
                method: 'POST',
                url: '/Canais/GetCanais',
                headers: {
                    "Accept": "application/json;odata=verbose"
                }
            })
            .success(function(data) {
                $scope.canais = fillListChannels(data.d.results);
            })
            .error(function(error){
                console.log("Erro: Erro ao carregar canais.");    
                console.log(error);
            });
            function fillListChannels(listChannels) {
                var listChannelModel = [];
                for (var i = 0; i < listChannels.length; i++) {
                    listChannelModel.push(new fillChannelModel(listChannels[i]));
                }
                return listChannelModel;
            }
            function fillChannelModel(channel) {
                var self = {};
                self.Id = channel.Id;
                self.FirstName = channel.FirstName;
                return self;
            }
           }
       }
}]);
E no arquivo html eu fiz a chamada dela
<filtro-canais-directive lista="Canais"></filtro-canais-directive>
A minha dúvida se dá no momento onde eu vou obter os dados selecionados no html da minha diretiva. Na controladora eu obtenho da seguinte forma,
var scopeChannel = angular.element($("#filtroCanal")).scope();
Porém acredito que não seja da melhor forma essa obtenção de valores, visto que estou capturando os valores pelo DOM do elemento na controladora.
Desde já agradeço à ajuda.