i beg to differ. morally we absolutely are obliged to give them shelter.
When there are no locals struggling to afford shelter, then we can talk about helping strangers from other places
most of the germans who are homeless failed to take advantage of available support to get it, not because they couldn't afford it. otherwise if they didn't get support then the problem is a failure in the bureaucracy, not a lack of available space or resources. it is a fallacy to think that refusing help to refugees would improve the situation for locals. if it was that simple we could have solved those problems a long time ago.
this is the kind of rhetoric that stirs up xenophobia and plays into the hands of the kind of politicians that according to your last paragraph you also don't want to see elected.